package com.boc.address.contract;

import demo.bocweb.com.sdk.base.BasePresenter;
import demo.bocweb.com.sdk.base.IBaseModel;
import demo.bocweb.com.sdk.base.IBaseView;
import demo.bocweb.com.sdk.base.bean.BaseBean;
import demo.bocweb.com.sdk.baseApi.DistrictBean;
import io.reactivex.Observable;
import okhttp3.RequestBody;

/**
 * Created by zhelun on 2018/2/2.
 */

public interface AddAddressContract {
    abstract class IAddAddressPresenter extends BasePresenter<IAddAddressModel, IAddAddressView> {
        public abstract void addAddress(RequestBody request);

        public abstract void getDistrictBean();
    }

    interface IAddAddressModel extends IBaseModel {
        Observable<BaseBean> addAddress(RequestBody request);

        Observable<BaseBean<DistrictBean>> getDistrictBean();
    }

    interface IAddAddressView extends IBaseView {
        void addSuccess();

        void updateDistrict(DistrictBean bean);

        void getDistrictBean();
    }

}
